package com.youlu.campus.base.interactive;

import lombok.Data;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.index.Indexed;

import java.io.Serializable;
import java.util.Date;

/**
 * 内容评论信息基础类
 *
 * @author: zhuhuaiqi
 * @date: 2020/11/23 21:07
 */
@Data
public class ContentCommentBase implements Serializable {

    @Id
    private String id;
    /**
     * 类型 DK打卡 DT动态、WZ文章、SP商品
     */
    private String contentType;
    /**
     * 动态内容ID
     */
    @Indexed(name = "idx_content_id")
    private String contentId;
    /**
     * 动态内容（评论内容）
     */
    private String info;
    /**
     * 一级评论关联人（内容创建人id）
     */
    @Indexed
    private String contentLinkId;
    /**
     * 一级评论id
     * ##二级评论使用
     */
    @Indexed(name = "idx_comment_id")
    private String commentId;

    /**
     * 二级评论关联人（一级创建人id或@评论创建人id）
     * ##二级评论使用
     */
    @Indexed
    private String commentLinkId;
    /**
     * 二级评论关联人昵称（被@的评论创建人昵称）
     */
    private String commentLinkNickName;
    /**
     * 评论创建人id
     */
    @Indexed
    private String commentatorId;
    /**
     * 评论人头像
     */
    private String commentatorAvatarUrl;
    /**
     * 评论人昵称
     */
    private String commentatorNickName;
    /**
     * 评论内容
     */
    private String commentContent;
    /**
     * 是否已读 false 未读 true：已读
     */
    private boolean read = false;

    /**
     * 评论级别 默认 1 一级评论 2 二级评论
     */
    private Integer level = 1;
    /**
     * 评论类型 1他人评论 2作者评论
     */
    private Integer type = 1;
    /**
     * 评论点赞数
     */
    private Integer likeCount = 0;
    /**
     * 创建时间
     */
    @CreatedDate
    private Date createdTime;

    /**
     * 是否展示
     */
    private Boolean show = Boolean.TRUE;

}
